package com.yungu.swift.order.dao;


import com.yungu.swift.assets.driver.model.dto.DriverHeatMapDto;
import com.yungu.swift.base.mapper.IMapper;
import com.yungu.swift.order.model.dto.OrderDetailDto;
import com.yungu.swift.order.model.vo.AdminGeneralOrderDetailVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * OrderDetailMapper数据库操作接口类
 **/

public interface OrderDetailMapper extends IMapper<OrderDetailDto> {

    /**
     * 获取订单详情 —— 专车、快车、出租车
     *
     * @param orderUuid
     * @return
     */
    AdminGeneralOrderDetailVo getGeneralOrderDetail(@Param("orderUuid") String orderUuid);

    List<OrderDetailDto> listByOrderUuids(List<String> orderUuids);

    int updateByOrderUuid(OrderDetailDto orderDetailDto);

    /**
     * 热力图订单统计
     *
     * @param type 业务类型
     * @param time 时间间隔
     * @return
     */
    List<DriverHeatMapDto> listHeatMapOrder(@Param(value = "type") Integer type, @Param(value = "time") Integer time);

    List<OrderDetailDto> findByOrders(Map<String, Object> params);

}